package com.lansi.fb.person.service;

import java.util.Date;
import java.util.List;

import com.lansi.fb.person.bean.Person;



public interface IPersonService {
	/**
	 * 添加用户
	 * @param 
	 */
	void register(Person person);
	/**
	 * 根据id删除用户信息-可以批量删除
	 * @param id
	 */
	void delPerson(Integer[] ids);
	/**
	 * 单个删除根据id
	 * @param id
	 */
	void delById(Integer id);
	/**
	 * 修改用户信息
	 * @param user
	 */
	void updatePerson(Integer id,
			String	username,	String	sex,
			Integer	age,      	String	worktype,
			String	sn,     	String	level,
			String	cardid,  	String	userid,
			String	picture,	String	memo,
			Date	ctime
			);
	/**
	 * 根据id查询用户信息
	 * @param id
	 * @return
	 */
	Person getPersonById(Integer id);
	/**
	 * 根据用户姓名查询用户信息
	 * @param username
	 * @return
	 */
	Person getPersonByUsername(String username);
	/**
	 * 根据性别查询用户信息
	 * @param sex
	 * @return
	 */
	List<Person> getPersonBySex(String sex);
	/**
	 * 根据职务查询用户信息
	 * @param level
	 * @return
	 */
	List<Person> getPersonByLevel(String level);
	/**
	 * 根据工卡ID查询用户信息
	 * @param cardid
	 * @return
	 */
	Person getPersonByCardid(String cardid);
	/**
	 * 根据年龄查询用户信息
	 * @param age
	 * @return
	 */
	List<Person> getPersonByAge(String age);
	/**
	 * 根据工作种类查询用户信息
	 * @param worktype
	 * @return
	 */
	List<Person> getPersonByWorktype(String worktype);
	/**
	 * 根据工号查询用户信息
	 * @param sn
	 * @return
	 */
	List<Person> getPersonBySn(String sn);
	/**
	 * 根据身份证查询用户信息
	 * @param userid
	 * @return
	 */
	List<Person> getPersonByUserid(String userid);
	
	/**
	 * 查询数据库总计数据数量
	 * @return
	 */
	Integer getPersoncount(
			String username,
			Integer sex,
			Integer level,
			String cardid,
			Integer age,
			Integer worktype,
			String sn,
			String userid
			);
	
	/**
	 * 查询出所有用户的信息
	 * @return
	 */
	List<Person> getPerson(
					String username,
					Integer sex,
					Integer level,
					String cardid,
					Integer age,
					Integer worktype,
					String sn,
					String userid,
			
					Integer offset,
					Integer count);
	/**
	 * 修改图片
	 * @param picture
	 * @param id
	 */
	void updateImage(String picture,String userid);
}
